Effective bug tracking system is critical for removing errors or bugs in a software product across multiple releases. A problem associated with the current software configuration management and/or software bug tracking processes is keeping track of bug fixing status across product releases. To improve product quality between releases, it is important to know whether a given bug-fix or bug-patch has entered in a specific release. To remove a bug(s) between product releases, a conventional bug tracking system clones the bug for every release.
Cloning is typically a process of making copies of the bug-records for tracking bug status for a release. A typical bug-tracking tool allows cloning bug-records for different releases and allows for a single life-cycle for a software bug, which tracks a single bug in a single software release. In reality, however, the detected bug may need to be fixed in multiple releases, and cross-references between clones in different releases are typically difficult.
As such, a drawback associated with cloning is that it is possible to fix the same bug multiple times in multiple releases by different persons or engineers. Another problem associated with cloning is that cloned copies of bugs are disconnected. As such, the updates and/or analysis performed in one cloned copy typically do not reflect in other copies of clones. In yet another problem associated with cloning is artificially inflating bug count, which leads to incorrect bug reports and statistics.